파이썬에서
for
v += a['dd']['ee']['ff']
방식은
e = a['dd']['ee']['ff']
for
v += e
보다 매우 느리다.
최적화를 수행해주거나 자체 캐시를 태울까 싶지만 안 그런다.
혹시나 해서 chatgpt 에게 물어보니 느리다고 나왔고, 제시한 테스트 코드와 결과가 같다.
즉, 딕셔너리를 매번 탐색 참조한다.
chatgpt 에게 물어본 질문은 이렇다.
a['dd']['ee']['ff'] 와 같이 깊이가 깊고 복잡한 딕셔너리이다.
어떤 루프에서 해당 값을 반복적으로 사용할 때,
b = a['dd']['ee']['ff'] 와 같이 한 번더 레퍼런싱 해서 참조하는 것이
그냥 a['dd']['ee']['ff'] 처럼 쓰는 것 보다 빠른가?